#ifndef _IDUIINTERFACE_H__ED6B7EC4_AEAE_4153_BF41_421F3F7F1B90_INCLUDE__
#define _IDUIINTERFACE_H__ED6B7EC4_AEAE_4153_BF41_421F3F7F1B90_INCLUDE__


#endif //_IDUIINTERFACE_H__ED6B7EC4_AEAE_4153_BF41_421F3F7F1B90_INCLUDE__
MIDL_INTERFACE("C5597669-334F-4721-91F2-C675A6F04CEB")
IDUIBuffer : IUnknown
{
	STDMETHOD(SetBuffer)(const void* pData, ULONG lSize)PURE;
	STDMETHOD_(ULONG, GetSize)()PURE;
	STDMETHOD_(const void*, GetBuffer)()PURE;
};

MIDL_INTERFACE("31F637C8-307C-4fc0-97CF-0C61CD02D3F2")
IDUIScriptEngine : public IUnknown
{
	STDMETHOD(InitEngine)(BSTR bstrScriptName)PURE;
	STDMETHOD(StartEngine)()PURE;
	STDMETHOD(UnInitEngine)()PURE;
	STDMETHOD(AddScriptCode)(BSTR bstrScriptCode)PURE;
	STDMETHOD(AddScriptItem)(BSTR bstrItemName, IUnknown * pUnkItem)PURE;
	STDMETHOD(ExecuteScript)(BSTR bstrStatement, VARIANT * varResult)PURE;
	STDMETHOD(InvokeFunction)(BSTR bstrFunction, VARIANT * varResult)PURE;
	STDMETHOD(GetScriptDispatch)(BSTR bstrItemName, IDispatch ** ppdispItem)PURE;
};


MIDL_INTERFACE("C056A0EC-1FCB-4d83-8DBD-83F01F7A0786")
IDUIThemeNode : IUnknown
{
	STDMETHOD(GetNodeName)(BSTR *pbstrNodeName)PURE;
	STDMETHOD_(ULONG, GetAttributeCount)()PURE;
	STDMETHOD(GetAttributeByIndex)(ULONG lIndex, BSTR * pbstrAttriName, BSTR * pbstrAttriValue)PURE;
	STDMETHOD(GetAttributeByName)(BSTR bstrAttriName, BSTR * pbstrAttriValue)PURE;
};

MIDL_INTERFACE("04F254FA-049E-4808-A714-16913676F5ED")
IDUIEnranceThemeNode : IDUIThemeNode
{
	STDMETHOD_(ULONG, GetChildrenCount)()PURE;
	STDMETHOD(GetChildrenNodeByIndex)(ULONG lIndex, IDUIEnranceThemeNode ** ppEntranceNode)PURE;
	STDMETHOD(RemoveAttributeByName)(BSTR bstrAttriName)PURE;
};

MIDL_INTERFACE("5D60280A-4DFB-42b7-8C8E-88CA4F42A69C")
IDUIThemeReader
{
	STDMETHOD(SetThemeData)(IDUIBuffer * pEntranceBuffer)PURE;
	STDMETHOD_(ULONG, GetThemeCount)()PURE;
	STDMETHOD(GetRootThemeNode)(ULONG lIndex, IDUIEnranceThemeNode ** ppThemeNode)PURE;
};